def apply(var func:Int->Int->Int, var a:Int, var b:Int):Int {
    return func(a)(b);
}

def make_func(var a:Int):Int->Int {
    def inc(var b:Int):Int {
        return b + 1;
    }

    return inc;
}

print(apply(make_func, 1, 2));

